package cn.wolfcode.luowowo.domain;


import com.alibaba.fastjson.JSON;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.data.annotation.Transient;
import org.springframework.data.mongodb.core.mapping.Document;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

//目的地实例
@Setter
@Getter
@ToString
@Document("destination")
public class Destination extends BaseDomain{

    private String name;                        //当前目的地名称
    private String english;                     //当前目的地英文名
    private String parentId;                    //上一级目的地的ObjectId
    private String parentName;                  //上一级目的地的名称
    private int deep;                           //当前目的地级别(层次)
    private String info;                        //目的地详细信息
    private String coverUrl;                    //目的地图片url

    //子地区
    @Transient  //添加时, 忽略该字段, 不要讲这个字段添加到mongodb数据集合中(表)
    private List<Destination> children = new ArrayList<>();

    public String getJsonString(){
        Map<String,Object> map = new HashMap<>();
        map.put("id", super.getId());
        map.put("info", this.info);

        return JSON.toJSONString(map);
    }
}
